import request from '../utils/request'

/**
 * 从购物车创建订单
 * @param {Object} data 订单数据
 * @param {Array<Number>} data.cartIds 购物车ID列表（可选，不传则使用购物车中所有商品）
 */
export function createOrder(data = {}) {
  return request({
    url: '/orders',
    method: 'post',
    data: {
      cartIds: data.cartIds || undefined
    }
  })
}

/**
 * 获取用户的订单列表
 */
export function getOrderList() {
  return request({
    url: '/orders',
    method: 'get'
  })
}

/**
 * 根据订单ID获取订单详情
 * @param {Number} orderId 订单ID
 */
export function getOrderById(orderId) {
  return request({
    url: `/orders/${orderId}`,
    method: 'get'
  })
}

/**
 * 取消订单
 * @param {Number} orderId 订单ID
 */
export function cancelOrder(orderId) {
  return request({
    url: `/orders/${orderId}/cancel`,
    method: 'put'
  })
}

